SQL ফাংশন হল ডেটাবেসে ডেটা প্রক্রিয়াকরণের জন্য ব্যবহৃত পূর্বনির্ধারিত কমান্ড বা কৌশল। SQL ফাংশন ব্যবহার করে আপনি ডেটা ম্যানিপুলেশন, অ্যাগ্রিগেশন, হিসাব-নিকাশ এবং কাস্টম ফাংশন তৈরি করতে পারেন। এসকিউএল ফাংশন দুটি প্রধান ভাগে বিভক্ত করা যায়:
- এগ্রিগেট ফাংশন (Aggregate Functions): গ্রুপের উপর অপারেশন চালায়।
- স্কেলার ফাংশন (Scalar Functions): একক মানের উপরে অপারেশন চালায়।
এখানে কিছু সাধারণ SQL ফাংশন এর উদাহরণ দেওয়া হল।
১. এগ্রিগেট ফাংশন (Aggregate Functions)
এগ্রিগেট ফাংশনগুলি ডেটাবেসের একাধিক রেকর্ডের উপর গণনা বা অপারেশন করতে ব্যবহৃত হয়। এগুলি GROUP BY কুয়েরির সাথে ব্যবহৃত হয়, যেমন COUNT, SUM, AVG, MAX, এবং MIN।
১.১. COUNT() ফাংশন
এই ফাংশনটি নির্দিষ্ট শর্ত পূরণ করা রেকর্ডের সংখ্যা গণনা করে।
উদাহরণ:
SELECT COUNT(*) FROM Students;
এটি Students টেবিলের সমস্ত রেকর্ডের সংখ্যা গণনা করবে।
১.২. SUM() ফাংশন
SUM() ফাংশনটি একটি নির্দিষ্ট কলামের মানের যোগফল গণনা করে।
উদাহরণ:
SELECT SUM(Salary) FROM Employees;
এটি Employees টেবিলের সকল কর্মচারীর Salary কলামের যোগফল প্রদান করবে।
১.৩. AVG() ফাংশন
AVG() ফাংশনটি একটি কলামের গড় মান হিসাব করে।
উদাহরণ:
SELECT AVG(Age) FROM Students;
এটি Students টেবিলের Age কলামের গড় মান প্রদান করবে।
১.৪. MAX() ফাংশন
MAX() ফাংশনটি একটি কলামের সর্বোচ্চ মান প্রদান করে।
উদাহরণ:
SELECT MAX(Age) FROM Students;
এটি Students টেবিলের Age কলামের সর্বোচ্চ বয়স প্রদান করবে।
১.৫. MIN() ফাংশন
MIN() ফাংশনটি একটি কলামের সর্বনিম্ন মান প্রদান করে।
উদাহরণ:
SELECT MIN(Salary) FROM Employees;
এটি Employees টেবিলের Salary কলামের সর্বনিম্ন বেতন প্রদান করবে।
২. স্কেলার ফাংশন (Scalar Functions)
স্কেলার ফাংশনগুলি একক মানের উপর অপারেশন করে। এই ধরনের ফাংশনগুলি টেক্সট, সংখ্যা, তারিখ ইত্যাদি মানের উপর কাজ করে। কিছু উদাহরণ হল UPPER(), LOWER(), LENGTH(), ROUND(), NOW(), CONCAT()।
২.১. UPPER() ফাংশন
UPPER() ফাংশনটি একটি টেক্সট স্ট্রিংয়ের সমস্ত অক্ষরকে বড় অক্ষরে রূপান্তর করে।
উদাহরণ:
SELECT UPPER(Name) FROM Employees;
এটি Employees টেবিলের Name কলামের সমস্ত নামকে বড় অক্ষরে রূপান্তর করবে।
২.২. LOWER() ফাংশন
LOWER() ফাংশনটি একটি টেক্সট স্ট্রিংয়ের সমস্ত অক্ষরকে ছোট অক্ষরে রূপান্তর করে।
উদাহরণ:
SELECT LOWER(Name) FROM Employees;
এটি Employees টেবিলের Name কলামের সমস্ত নামকে ছোট অক্ষরে রূপান্তর করবে।
২.৩. LENGTH() ফাংশন
LENGTH() ফাংশনটি একটি টেক্সট স্ট্রিংয়ের দৈর্ঘ্য বা অক্ষরের সংখ্যা প্রদান করে।
উদাহরণ:
SELECT LENGTH(Name) FROM Employees;
এটি Employees টেবিলের Name কলামের নামগুলোর দৈর্ঘ্য প্রদান করবে।
২.৪. ROUND() ফাংশন
ROUND() ফাংশনটি সংখ্যাকে নির্দিষ্ট দশমিক স্থান পর্যন্ত রাউন্ড করে।
উদাহরণ:
SELECT ROUND(Salary, 2) FROM Employees;
এটি Employees টেবিলের Salary কলামের মানকে ২ দশমিক পর্যন্ত রাউন্ড করবে।
২.৫. NOW() ফাংশন
NOW() ফাংশনটি বর্তমান তারিখ এবং সময় প্রদান করে।
উদাহরণ:
SELECT NOW();
এটি বর্তমান তারিখ এবং সময় প্রদান করবে।
২.৬. CONCAT() ফাংশন
CONCAT() ফাংশনটি দুটি বা ততোধিক স্ট্রিংকে একত্রিত (concatenate) করে।
উদাহরণ:
SELECT CONCAT(FirstName, ' ', LastName) AS FullName FROM Employees;
এটি Employees টেবিলের FirstName এবং LastName কলামকে একত্রিত করে একটি পূর্ণ নাম প্রদান করবে।
৩. Date and Time Functions
SQL তে Date and Time Functions ব্যবহার করে তারিখ এবং সময়ের সাথে সম্পর্কিত অপারেশন করা হয়। কিছু জনপ্রিয় তারিখ ও সময় ফাংশন হলো CURDATE(), DATE_ADD(), DATE_SUB(), YEAR(), MONTH(), DAY()।
৩.১. CURDATE() ফাংশন
CURDATE() ফাংশনটি বর্তমান তারিখ প্রদান করে।
উদাহরণ:
SELECT CURDATE();
এটি বর্তমান তারিখ প্রদান করবে।
৩.২. DATE_ADD() ফাংশন
DATE_ADD() ফাংশনটি নির্দিষ্ট তারিখে একটি নির্দিষ্ট সময় যোগ করে।
উদাহরণ:
SELECT DATE_ADD('2022-01-01', INTERVAL 1 MONTH);
এটি '2022-01-01' তারিখে ১ মাস যোগ করে নতুন তারিখ প্রদান করবে।
৩.৩. DATE_SUB() ফাংশন
DATE_SUB() ফাংশনটি নির্দিষ্ট তারিখ থেকে একটি নির্দিষ্ট সময় বিয়োগ করে।
উদাহরণ:
SELECT DATE_SUB('2022-01-01', INTERVAL 1 MONTH);
এটি '2022-01-01' তারিখ থেকে ১ মাস বিয়োগ করে নতুন তারিখ প্রদান করবে।
৩.৪. YEAR() ফাংশন
YEAR() ফাংশনটি একটি তারিখ থেকে বছর বের করে।
উদাহরণ:
SELECT YEAR('2022-01-01');
এটি '2022-01-01' তারিখের বছর 2022 প্রদান করবে।
সারাংশ
SQL ফাংশন ডেটাবেসে ডেটা ম্যানিপুলেশন এবং বিশ্লেষণের জন্য অত্যন্ত কার্যকরী। এগুলি এগ্রিগেট ফাংশন (যেমন COUNT(), SUM(), AVG(), MAX(), MIN()) এবং স্কেলার ফাংশন (যেমন UPPER(), LOWER(), LENGTH(), NOW(), CONCAT()) হিসেবে বিভক্ত করা যায়। SQL ফাংশন ব্যবহার করে আপনি ডেটা বিশ্লেষণ এবং গণনা করতে পারেন, যেগুলি আপনার ডেটাবেস ম্যানেজমেন্টকে আরও কার্যকর এবং সময় সাশ্রয়ী করে তোলে।
SQL-এর অনেক নিজস্ব(Built-in) ফাংশন রয়েছে, যা তথ্য হিসাব-নিকাশে ব্যবহৃত হয়।
SQL Aggregate ফাংশন
aggregate ফাংশন একটি কলামের ভ্যালুগুলো হিসাব(calculation) করে একটি একক মান রিটার্ন করে।
প্রয়োজনীয় aggregate ফাংশনঃ
AVG()- গড় মান রিটার্ন করে।COUNT()- সারি সংখ্যা রিটার্ন করে।FIRST()- প্রথম ভ্যালুটি রিটার্ন করে।LAST()- শেষ ভ্যালুটি রিটার্ন করে।MAX()- বৃহত্তম ভ্যালুটি রিটার্ন করে।MIN()- ক্ষুদ্রতম ভ্যালুটি রিটার্ন করে।SUM()- সমষ্টি রিটার্ন করে।
SQL Scalar ফাংশন
ইনপুট ভ্যালুর উপর ভিত্তি করে scalar ফাংশন একক মান রিটার্ন করে।
প্রয়োজনীয় scalar ফাংশনঃ
UCASE()- একটি ফিল্ডের অক্ষর সমূহকে বড়-হাতের অক্ষরে রূপান্তর করে।LCASE()- একটি ফিল্ডের অক্ষর সমূহকে ছোট-হাতের অক্ষরে রূপান্তর করে।MID()- একটি টেক্সট ফিল্ডের থেকে অক্ষর সমূহকে নিষ্কাশন(extract) করে।LEN()- টেক্সট ফিল্ডের দৈর্ঘ্য কে রিটার্ন করে।ROUND()- দশমিক সংখ্যাকে একটি নির্দিষ্ট পূর্ণ সাংখ্যায় প্রকাশ করে।NOW()- সিস্টেমের বর্তমান তারিখ এবং সময় রিটার্ন করে।FORMAT()- একটি ফিল্ডকে প্রদর্শন করানোর গঠন(formats) নির্ধারন করে।
বিঃদ্রঃ Aggregate ফাংশন-সমুহ সম্পর্কে পরবর্তী অধ্যায়ে বিস্তারিত আলোচনা করা হয়েছে।
AVG() ফাংশন একটি কলামের গড় মান রিটার্ন করে।
SQL AVG() সিনট্যাক্স
নিম্নে SQL AVG() ফাংশনটির সিনট্যাক্স দেওয়া হলঃ
SELECT AVG(name_of_column)
FROM name_of_table;
নমুনা ডেটাবেজ
AVG() ফাংশনের ব্যবহার দেখানোর জন্য আমরা আমাদের নমুনা ডেটাবেজ Student ব্যবহার করবো।
SQL AVG() উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_details" টেবিলের "রোল নম্বর(Roll_number)" কলামের গড় মান নিয়ে আসবেঃ
উদাহরণ
SELECT AVG(Roll_number)
FROM Student_details;
SQL COUNT() ফাংশনটি ডেটাবেজে নির্ধারিত বৈশিষ্ট্যের ভিত্তিতে সদৃশ(matched) সারির সংখ্যা রিটার্ন করে।
SQL COUNT(name_of_column) সিনট্যাক্স
COUNT(name_of_column) ফাংশনটি একটি নির্দিষ্ট কলামের মোট ভ্যালুর সংখ্যা রিটার্ন করে। তবে এক্ষেত্রে NULL ভ্যালুগুলো হিসাবযোগ্য(countable) নহেঃ
SELECT COUNT(name_of_column)
FROM name_of_table;
SQL COUNT(*) সিনট্যাক্স
COUNT(*) ফাংশনটি একটি টেবিলের সর্বমোট রেকর্ড সংখ্যা রিটার্ন করেঃ
SELECT COUNT(*)
FROM name_of_table;
SQL COUNT(DISTINCT name_of_column) সিনট্যাক্স
COUNT(DISTINCT name_of_column) ফাংশনটি একটি নির্দিষ্ট কলামের মোট স্বতন্ত্র(distinct) রেকর্ড সংখ্যা রিটার্ন করেঃ
SELECT COUNT(DISTINCT name_of_column)
FROM name_of_table;
বিঃদ্রঃ
COUNT(DISTINCT)ফাংশনটি শুধুমাত্র Oracle এবং SQL Server এ কাজ করে কিন্তু MS Access এ কাজ করে না।
নমুনা ডেটাবেজ
COUNT() ফাংশনের ব্যবহার দেখানোর জন্য আমরা আমাদের নমুনা ডেটাবেজ Student ব্যবহার করবো।
নিচের অংশটি "Student_details" টেবিল থেকে নেওয়া হয়েছেঃ
| আইডি নং | রোল নাম্বার | শিক্ষার্থীর নাম | প্রতিষ্ঠানের নাম | ঠিকানা |
|---|---|---|---|---|
| ১ | ১০১ | তামজীদ হাসান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ২ | ১০২ | মিনহাজুর রহমান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৩ | ১০৩ | মোঃ সবুজ হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৪ | ১০৪ | ইয়াসিন হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৫ | ১০৫ | ফরহাদ উদ্দিন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
SQL COUNT() উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_details" টেবিলের "রোল নাম্বার(Roll_number)"=১০৩ এ কতটি রেকর্ড রয়েছে তা গণনা করবেঃ
উদাহরণ
SELECT COUNT(Roll_number) AS StudentDetailsRoll_103
FROM Student_details
WHERE Roll_number=103;
SQL COUNT(*) উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_details" টেবিলের সকল রেকর্ডকে গণনা করবেঃ
উদাহরণ
SELECT COUNT(*) AS TotalStudentDetails
FROM Student_details;
SQL COUNT(DISTINCT name_of_column) উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_details" টেবিলের ইউনিক রেকর্ড গুলোকে গণনা করবেঃ
উদাহরণ
SELECT COUNT(DISTINCT Roll_number) AS TotalStudentDetails
FROM Student_details;
SQL FIRST() ফাংশনটি নির্বাচিত(selected) কলামের প্রথম ভ্যালুটি রিটার্ন করে।
SQL FIRST() সিনট্যাক্স
SELECT FIRST(name_of_column)
FROM name_of_table;
বিঃদ্রঃ
FIRST()ফাংশনটি শুধুমাত্র MS Access এ সাপোর্ট করে।
SQL FIRST() ফাংশন ব্যবহারের জন্য MySQL, Oracle এবং SQL Server এ ভিন্ন পদ্ধতি ব্যবহার করা হয়।
MySQL সিনট্যাক্স
SELECT name_of_column
FROM name_of_table
ORDER BY name_of_column ASC LIMIT 1;
Oracle সিনট্যাক্স
SELECT name_of_column
FROM name_of_table
WHERE ROWNUM <=1
ORDER BY name_of_column ASC;
SQL সার্ভার সিনট্যাক্স
SELECT TOP 1 name_of_column
FROM name_of_table
ORDER BY name_of_column ASC;
নমুনা ডেটাবেজ
FIRST() ফাংশনের ব্যবহার দেখানোর জন্য আমরা আমাদের নমুনা ডেটাবেজ Student ব্যবহার করবো।
নিচের অংশটি "Student_details" টেবিল থেকে নেওয়া হয়েছেঃ
| আইডি নং | রোল নাম্বার | শিক্ষার্থীর নাম | প্রতিষ্ঠানের নাম | ঠিকানা |
|---|---|---|---|---|
| ১ | ১০১ | তামজীদ হাসান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ২ | ১০২ | মিনহাজুর রহমান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৩ | ১০৩ | মোঃ সবুজ হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৪ | ১০৪ | ইয়াসিন হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৫ | ১০৫ | ফরহাদ উদ্দিন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
SQL FIRST() ফাংশনের উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_details" টেবিলের "শিক্ষার্থীর নাম(Student_name)" কলামের প্রথম ভ্যালুটিকে সিলেক্ট করবেঃ
উদাহরণ
SELECT Student_name
FROM Student_details
ORDER BY Student_name ASC LIMIT 1;
LAST() একটি SQL ফাংশন যা সাধারণত অ্যাক্সেস ডেটাবেস (Access Database) বা MySQL এর মতো কিছু ডেটাবেস সিস্টেমে ব্যবহৃত হয়, এবং এটি সাধারণত শেষ রেকর্ড বা ফলাফল রিটার্ন করতে ব্যবহৃত হয়। যদিও LAST() SQL স্ট্যান্ডার্ড ফাংশন নয়, কিছু নির্দিষ্ট ডেটাবেসে এটি ব্যবহার করা যেতে পারে। তবে, বেশিরভাগ ডেটাবেস সিস্টেমে LIMIT বা ORDER BY ব্যবহারের মাধ্যমে শেষ রেকর্ড পাওয়া যায়।
এখানে SQL LAST() ফাংশন এবং এর বিকল্প ব্যবহারের উপায় নিয়ে বিস্তারিত আলোচনা করা হলো।
LAST() ফাংশন
LAST() ফাংশন সাধারণত একটি কলাম বা রেকর্ডের শেষ মান রিটার্ন করার জন্য ব্যবহৃত হয়। এটি কিছু সিস্টেমে অ্যাগ্রিগেট ফাংশন হিসেবে কাজ করতে পারে, তবে বেশিরভাগ ডেটাবেস সিস্টেমে এটি প্রাক-সংজ্ঞায়িত নয়। তাই LAST() ব্যবহারের জন্য বিশেষ কিছু ডেটাবেসের কুয়েরি বা বিকল্প পদ্ধতি প্রযোজ্য হতে পারে।
LAST() ফাংশন ব্যবহার:
এটি সাধারণত ডেটাবেসে ব্যবহার করা হয় শেষ রেকর্ড বা কলামের মান বের করার জন্য।
উদাহরণ:
ধরা যাক, আপনি একটি টেবিল থেকে শেষ salary মান পেতে চান:
SELECT LAST(salary) FROM Employees;
এটি Employees টেবিলের শেষ রেকর্ডের salary মান রিটার্ন করবে।
MySQL এবং অন্যান্য ডেটাবেসে LAST() ফাংশনের বিকল্প পদ্ধতি
যেহেতু LAST() SQL স্ট্যান্ডার্ডের অংশ নয়, তাই বেশিরভাগ ডেটাবেস সিস্টেমে এটি সমর্থিত নয়। তবে, আপনি ORDER BY এবং LIMIT ব্যবহার করে শেষ রেকর্ড বা সর্বশেষ মান পেতে পারেন।
MySQL তে LAST() ফাংশনের বিকল্প:
MySQL তে, আপনি ORDER BY এবং LIMIT ব্যবহার করে শেষ রেকর্ড পেতে পারেন।
উদাহরণ:
- শেষ রেকর্ড পেতে:
SELECT * FROM Employees ORDER BY id DESC LIMIT 1;
এটি Employees টেবিলের শেষ রেকর্ড (যেখানে id সবচেয়ে বড়) রিটার্ন করবে।
- একটি কলামের শেষ মান পেতে:
SELECT salary FROM Employees ORDER BY id DESC LIMIT 1;
এটি Employees টেবিলের শেষ salary মান রিটার্ন করবে।
PostgreSQL এবং SQL Server তে LAST() ফাংশনের বিকল্প:
PostgreSQL এবং SQL Server তে LAST() ফাংশন সমর্থিত নয়, তবে আপনি ORDER BY এবং LIMIT অথবা TOP (SQL Server এর জন্য) ব্যবহার করে শেষ রেকর্ড পেতে পারেন।
PostgreSQL এবং SQL Server এ বিকল্প:
- PostgreSQL:
SELECT salary FROM Employees ORDER BY id DESC LIMIT 1;
- SQL Server:
SELECT TOP 1 salary FROM Employees ORDER BY id DESC;
LAST() ফাংশন কেন ব্যবহার করা হয়?
- শেষ রেকর্ড বের করা: কখনও কখনও আপনাকে টেবিলের শেষ রেকর্ড বা সর্বশেষ ইনসার্ট করা মান বের করতে হয়।
- ডেটার পরিবর্তন পর্যবেক্ষণ: যদি আপনি সর্বশেষ রেকর্ডের পরিবর্তন বা ইনসার্ট পর্যবেক্ষণ করতে চান, তাহলে এই ফাংশনটি কাজে আসে।
- অ্যাগ্রিগেটেড ফলাফল:
LAST()ফাংশনটি নির্দিষ্ট অ্যাগ্রিগেট অপারেশনে ব্যবহার করা যেতে পারে যেখানে ডেটার শেষ মান পেতে হয়।
সারাংশ
LAST()ফাংশন কিছু নির্দিষ্ট ডেটাবেস সিস্টেমে ব্যবহৃত হয়, যেমন Microsoft Access এবং কিছু কাস্টম ডেটাবেসে। তবে, এটি SQL স্ট্যান্ডার্ড ফাংশন নয়।- বেশিরভাগ SQL ডেটাবেস সিস্টেমে, আপনি
ORDER BYএবংLIMITবাTOP(SQL Server) ব্যবহার করে শেষ রেকর্ড বা মান পেতে পারেন। LAST()ফাংশন সাধারণত শেষ মান বা শেষ রেকর্ড বের করার জন্য ব্যবহৃত হয়, কিন্তু এটি ডেটাবেসের উপর নির্ভরশীল।
SQL এর অধিকাংশ সিস্টেমে, ORDER BY DESC এবং LIMIT 1 ব্যবহার করেই আপনি শেষ রেকর্ড বা মান সহজেই পেতে পারেন।
SQL MAX() ফাংশনটি নির্বাচিত(selected) কলামের বৃহত্তম ভ্যালুটি রিটার্ন করে।
SQL MAX() সিনট্যাক্স
SELECT MAX(name_of_column)
FROM name_of_table;
নমুনা ডেটাবেজ
MAX() ফাংশনের ব্যবহার দেখানোর জন্য আমরা আমাদের নমুনা ডেটাবেজ Student ব্যবহার করবো।
নিচের অংশটি "Student_attendance" টেবিল থেকে নেওয়া হয়েছেঃ
| আইডি নং | রোল নাম্বার | উপস্থিতি | ভর্তির তারিখ |
|---|---|---|---|
| ১ | ১০১ | ৮৯ | ০১-১১-২০১৫ |
| ২ | ১০২ | ৯১ | ০১-১১-২০১৫ |
| ৩ | ১০৩ | ৮০ | ০১-১১-২০১৫ |
| ৪ | ১০৪ | ৭৫ | ০২-১১-২০১৫ |
| ৫ | ১০৫ | ৭৭ | ০২-১১-২০১৫ |
SQL MAX() ফাংশনের উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_attendance" টেবিলের "উপস্থিতি(Attendance)" কলামের সবচেয়ে বৃহত্তম ভ্যালুটি নিয়ে আসবেঃ
উদাহরণ
SELECT MAX(Attendance) AS HighestAttendance
FROM Student_attendance;
MIN() ফাংশনটি নির্বাচিত(selected) কলামের ক্ষুদ্রতম ভ্যালুটি রিটার্ন করে।
SQL MIN() সিনট্যাক্স
SELECT MIN(name_of_column)
FROM name_of_table;
নমুনা ডেটাবেজ
MIN() ফাংশনের ব্যবহার দেখানোর জন্য আমরা আমাদের নমুনা ডেটাবেজ Student ব্যবহার করবো।
নিচের অংশটি "Student_attendance" টেবিল থেকে নেওয়া হয়েছেঃ
| আইডি নং | রোল নাম্বার | উপস্থিতি | ভর্তির তারিখ |
|---|---|---|---|
| ১ | ১০১ | ৮৯ | ০১-১১-২০১৫ |
| ২ | ১০২ | ৯১ | ০১-১১-২০১৫ |
| ৩ | ১০৩ | ৮০ | ০১-১১-২০১৫ |
| ৪ | ১০৪ | ৭৫ | ০২-১১-২০১৫ |
| ৫ | ১০৫ | ৭৭ | ০২-১১-২০১৫ |
SQL MIN() ফাংশনের উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_attendance" টেবিলের "উপস্থিতি(Attendance)" কলামের সবচেয়ে ক্ষুদ্রতম ভ্যালুটি নিয়ে আসবেঃ
উদাহরণ
SELECT MIN(Attendance) AS LowestAttendance
FROM Student_attendance;
SQL SUM() ফাংশনটি একটি কলামের সকল সংখ্যা ভ্যালুর সমষ্টি রিটার্ন করে।
SQL SUM() সিনট্যাক্স
SELECT SUM(name_of_column)
FROM name_of_table;
নমুনা ডেটাবেজ
SUM() ফাংশনের ব্যবহার দেখানোর জন্য আমরা আমাদের নমুনা ডেটাবেজ Student ব্যবহার করবো।
নিচের অংশটি "Student_attendance" টেবিল থেকে নেওয়া হয়েছেঃ
| আইডি নং | রোল নাম্বার | উপস্থিতি | ভর্তির তারিখ |
|---|---|---|---|
| ১ | ১০১ | ৮৯ | ০১-১১-২০১৫ |
| ২ | ১০২ | ৯১ | ০১-১১-২০১৫ |
| ৩ | ১০৩ | ৮০ | ০১-১১-২০১৫ |
| ৪ | ১০৪ | ৭৫ | ০২-১১-২০১৫ |
| ৫ | ১০৫ | ৭৭ | ০২-১১-২০১৫ |
SQL SUM() ফাংশনের উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_attendance" টেবিলের " উপস্থিতি(Attendance)" কলামের সকল ভ্যালুর সমষ্টি নিয়ে আসবেঃ
উদাহরণ
SELECT SUM(Attendance) AS TotalAttendance
FROM Student_attendance;
SQL UCASE() ফাংশন একটি ফিল্ডের মানকে বড়-হাতের বর্ণে রূপান্তর করে।
SQL UCASE() সিনট্যাক্স
SELECT UCASE(name_of_column)
FROM name_of_table;
SQL Server এর জন্য সিনট্যাক্স
SELECT UPPER(name_of_column)
FROM name_of_table;
নমুনা ডেটাবেজ
UCASE() ফাংশনের ব্যবহার দেখানোর জন্য আমরা আমাদের নমুনা ডেটাবেজ Student ব্যবহার করবো।
নিচের অংশটি "Student_details" টেবিল থেকে নেওয়া হয়েছেঃ
| আইডি নং | রোল নাম্বার | শিক্ষার্থীর নাম | প্রতিষ্ঠানের নাম | ঠিকানা |
|---|---|---|---|---|
| ১ | ১০১ | তামজীদ হাসান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ২ | ১০২ | মিনহাজুর রহমান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৩ | ১০৩ | মোঃ সবুজ হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৪ | ১০৪ | ইয়াসিন হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৫ | ১০৫ | ফরহাদ উদ্দিন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
SQL UCASE() ফাংশনের উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_details" টেবিল থেকে "শিক্ষার্থীর নাম(Student_name)" এবং "ঠিকানা(Address)" কলামকে সিলেক্ট করে "শিক্ষার্থীর নাম(Student_name)" কলামের ইংরেজী শব্দ গুলোকে বড়-হাতের বর্ণে রূপান্তর করবেঃ
উদাহরণ
SELECT UCASE(Student_name) AS Student, Address
FROM Student_details;
বিঃদ্রঃ
UCASE()ফাংশন শুধুমাত্র ইংরেজী শব্দের সাথে কাজ করে।
SQL UCASE() ফাংশন একটি ফিল্ডের মানকে বড়-হাতের বর্ণে রূপান্তর করে।
SQL UCASE() সিনট্যাক্স
SELECT UCASE(name_of_column)
FROM name_of_table;
SQL Server এর জন্য সিনট্যাক্স
SELECT UPPER(name_of_column)
FROM name_of_table;
নমুনা ডেটাবেজ
UCASE() ফাংশনের ব্যবহার দেখানোর জন্য আমরা আমাদের নমুনা ডেটাবেজ Student ব্যবহার করবো।
নিচের অংশটি "Student_details" টেবিল থেকে নেওয়া হয়েছেঃ
| আইডি নং | রোল নাম্বার | শিক্ষার্থীর নাম | প্রতিষ্ঠানের নাম | ঠিকানা |
|---|---|---|---|---|
| ১ | ১০১ | তামজীদ হাসান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ২ | ১০২ | মিনহাজুর রহমান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৩ | ১০৩ | মোঃ সবুজ হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৪ | ১০৪ | ইয়াসিন হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৫ | ১০৫ | ফরহাদ উদ্দিন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
SQL UCASE() ফাংশনের উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_details" টেবিল থেকে "শিক্ষার্থীর নাম(Student_name)" এবং "ঠিকানা(Address)" কলামকে সিলেক্ট করে "শিক্ষার্থীর নাম(Student_name)" কলামের ইংরেজী শব্দ গুলোকে বড়-হাতের বর্ণে রূপান্তর করবেঃ
উদাহরণ
SELECT UCASE(Student_name) AS Student, Address
FROM Student_details;
বিঃদ্রঃ
UCASE()ফাংশন শুধুমাত্র ইংরেজী শব্দের সাথে কাজ করে।
SQL MID() ফাংশনটি টেক্সট ফিল্ড থেকে নির্দিষ্ট সংখ্যক বর্ণ নিষ্কাশন(extract) করে।
SQL MID() সিনটেক্স
SELECT MID(name_of_column, start, length) AS some_name
FROM name_of_table;
| প্যারামিটার | বর্ণনা |
|---|---|
name_of_column | আবশ্যক। যে ফিল্ড থেকে বর্ণ খুঁজে বের করে। |
start | আবশ্যক। শুরুর অবস্থান নির্ধারণ করে। |
length | ঐচ্ছিক। যত সংখ্যক অক্ষর রিটার্ন করবে তার দৈর্ঘ্য বুঝায়। যদি এটিকে বাদ দেওয়া হয় তাহলে MID() ফাংশনটি টেক্সট ফিল্ডের সকল অক্ষর গুলো নিয়ে আসে। |
বিঃদ্রঃ SQL Server এ
MID()ফাংশনের সমতুল্য ফাংশন হলোSUBSTRING()ফাংশন
SELECT SUBSTRING(name_of_column, start, length) AS some_name
FROM name_of_table;
নমুনা ডেটাবেজ
MID() ফাংশনের ব্যবহার দেখানোর জন্য আমরা আমাদের নমুনা ডেটাবেজ Student ব্যবহার করবো।
নিচের অংশটি "Student_details" টেবিল থেকে নেওয়া হয়েছেঃ
| আইডি নং | রোল নাম্বার | শিক্ষার্থীর নাম | প্রতিষ্ঠানের নাম | ঠিকানা |
|---|---|---|---|---|
| ১ | ১০১ | তামজীদ হাসান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ২ | ১০২ | মিনহাজুর রহমান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৩ | ১০৩ | মোঃ সবুজ হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৪ | ১০৪ | ইয়াসিন হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৫ | ১০৫ | ফরহাদ উদ্দিন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
SQL MID() ফাংশনের উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_details" টেবিল থেকে "ঠিকানা(Address)" কলামের প্রথম তিনটি অক্ষর সিলেক্ট করবেঃ
উদাহরণ
SELECT MID(Address, 1, 3) AS ShortAddress
FROM Student_details;
ফলাফলঃ
| আইডি নং | রোল নাম্বার | শিক্ষার্থীর নাম | প্রতিষ্ঠানের নাম | সংক্ষিপ্ত ঠিকানা |
|---|---|---|---|---|
| ১ | ১০১ | তামজীদ হাসান | জাতীয় বিশ্ববিদ্যালয় | চাঁ |
| ২ | ১০২ | মিনহাজুর রহমান | জাতীয় বিশ্ববিদ্যালয় | চাঁ |
| ৩ | ১০৩ | মোঃ সবুজ হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁ |
| ৪ | ১০৪ | ইয়াসিন হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁ |
| ৫ | ১০৫ | ফরহাদ উদ্দিন | জাতীয় বিশ্ববিদ্যালয় | চাঁ |
LEN() ফাংশনটি টেক্সট ফিল্ডের মধ্যে অবস্থিত অক্ষরের সংখ্যা রিটার্ন করে।
SQL LEN() সিনট্যাক্স
SELECT LEN(name_of_column)
FROM name_of_table;
MySQL এর জন্য সিনট্যাক্স
MySQL-এ LEN() ফাংশনটি কাজ করে না এর পরিবর্তে আমরা LENGTH() ফাংশনটি ব্যবহার করবো।
SELECT LENGTH(name_of_column)
FROM name_of_table;
নমুনা ডেটাবেজ
LEN() ফাংশনের ব্যবহার দেখানোর জন্য আমরা আমাদের নমুনা ডেটাবেজ Student ব্যবহার করবো।
নিচের অংশটি "Student_details" টেবিল থেকে নেওয়া হয়েছেঃ
| আইডি নং | রোল নাম্বার | শিক্ষার্থীর নাম | প্রতিষ্ঠানের নাম | ঠিকানা |
|---|---|---|---|---|
| ১ | ১০১ | তামজীদ হাসান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ২ | ১০২ | মিনহাজুর রহমান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৩ | ১০৩ | মোঃ সবুজ হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৪ | ১০৪ | ইয়াসিন হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৫ | ১০৫ | ফরহাদ উদ্দিন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
SQL LEN() ফাংশনের উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_details" টেবিল থেকে সকল কলাম সিলেক্ট করবে এবং "শিক্ষার্থীর নাম(Student_name)" কলামের অক্ষরের দৈর্ঘ্য নির্ণয় করে একটি নতুন কলামে ইনসার্ট করবেঃ
উদাহরণ
SELECT *, LENGTH(Student_name) AS LengthOfName
FROM Student_details;
ফলাফলঃ
| আইডি নং | রোল নাম্বার | শিক্ষার্থীর নাম | শিক্ষার্থীর নামের দৈর্ঘ্য | প্রতিষ্ঠানের নাম | ঠিকানা |
|---|---|---|---|---|---|
| ১ | ১০১ | তামজীদ হাসান | 34 | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ২ | ১০২ | মিনহাজুর রহমান | 40 | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৩ | ১০৩ | মোঃ সবুজ হোসেন | 38 | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৪ | ১০৪ | ইয়াসিন হোসেন | 34 | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৫ | ১০৫ | ফরহাদ উদ্দিন | 34 | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
ROUND() ফাংশনের উদাহরণ
SQL ROUND() ফাংশনটি নির্দিষ্ট দশমিক সংখ্যাকে একটি পূর্ণ সংখ্যায় প্রকাশ করতে ব্যবহৃত হয়।
SQL ROUND() সিনট্যাক্স
SELECT ROUND(name_of_column,decimals)
FROM name_of_table;
| প্যারামিটার | বর্ণনা |
|---|---|
| name_of_column | আবশ্যক। যে ফিল্ডটি রাউন্ড করতে হবে। |
| decimals | আবশ্যক। দশমিক সংখ্যা ফেরত পাঠাবে। |
নমুনা ডেটাবেজ
ROUND() ফাংশনের ব্যবহার দেখানোর জন্য আমরা আমাদের নমুনা ডেটাবেজ Student ব্যবহার করবো।
নিচের অংশটি "Student_details" টেবিল থেকে নেওয়া হয়েছেঃ
| আইডি নং | রোল নাম্বার | শিক্ষার্থীর নাম | প্রতিষ্ঠানের নাম | ঠিকানা |
|---|---|---|---|---|
| ১ | ১০১.০০ | তামজীদ হাসান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ২ | ১০২.০০ | মিনহাজুর রহমান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৩ | ১০৩.০০ | মোঃ সবুজ হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৪ | ১০৪.০০ | ইয়াসিন হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৫ | ১০৫.০০ | ফরহাদ উদ্দিন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
SQL ROUND() ফাংশনের উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_details" টেবিল থেকে "রোল নাম্বার(Roll_number)" কলামটি সিলেক্ট করে এর মান গুলোকে রাউন্ড করবেঃ
উদাহরণ
SELECT ROUND(Roll_number,0) AS Roll_number
FROM Student_details;
ফলাফলঃ
| আইডি নং | রোল নাম্বার | শিক্ষার্থীর নাম | প্রতিষ্ঠানের নাম | ঠিকানা |
|---|---|---|---|---|
| ১ | ১০১ | তামজীদ হাসান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ২ | ১০২ | মিনহাজুর রহমান | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৩ | ১০৩ | মোঃ সবুজ হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৪ | ১০৪ | ইয়াসিন হোসেন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
| ৫ | ১০৫ | ফরহাদ উদ্দিন | জাতীয় বিশ্ববিদ্যালয় | চাঁদপুর |
SQL NOW() ফাংশনটি সিস্টেমের বর্তমান সময় এবং তারিখ রিটার্ন করে।
SQL NOW() সিনটেক্স
SELECT NOW()
FROM name_of_table;
নমুনা ডেটাবেজ
NOW() ফাংশনের ব্যবহার দেখানোর জন্য আমরা আমাদের নমুনা ডেটাবেজ Student ব্যবহার করবো।
নিচের অংশটি "Student_attendance" টেবিল থেকে নেওয়াঃ
| আইডি নং | রোল নাম্বার | উপস্থিতি | ভর্তির তারিখ |
|---|---|---|---|
| ১ | ১০১ | ৮৯ | ০১-১১-২০১৫ |
| ২ | ১০২ | ৯১ | ০১-১১-২০১৫ |
| ৩ | ১০৩ | ৮০ | ০১-১১-২০১৫ |
| ৪ | ১০৪ | ৭৫ | ০২-১১-২০১৫ |
| ৫ | ১০৫ | ৭৭ | ০২-১১-২০১৫ |
SQL NOW() ফাংশনের উদাহরণ
নিম্নের SQL স্টেটমেন্টটি "Student_attendance" টেবিল থেকে আজকের দিনে ভর্তিকৃত শিক্ষার্থীদের তথ্য নিয়ে আসবেঃ
উদাহরণ
SELECT NOW() AS TodaysAdmission
FROM Student_attendance;
SQL FORMAT() ফাংশনটি একটি ফিল্ডের তথ্য কিভাবে প্রদর্শিত হবে তা নির্ধারণ করে। ডেটাবেজ থেকে প্রাপ্ত তথ্যকে আমাদের ইচ্ছামত ফরম্যাটে দেখানোর জন্য আমরা FORMAT() ফাংশনটি ব্যবহার করবো।
SQL FORMAT() সিনট্যাক্স
SELECT FORMAT(name_of_column,format)
FROM name_of_table;
| প্যারামিটার | বর্ণনা |
|---|---|
name_of_column | আবশ্যক। যে ফিল্ডটি ফরম্যাট করতে হবে তা সিলেক্ট করবে। |
format | আবশ্যক। ফরম্যাট নির্দেশ করে। |
নমুনা ডেটাবেজ
FORMAT() ফাংশনের ব্যবহার দেখানোর জন্য আমরা আমাদের নমুনা ডেটাবেজ Student ব্যবহার করবো।
নিচের অংশটি "Student_attendance" টেবিল থেকে নেওয়াঃ
| আইডি নং | রোল নাম্বার | উপস্থিতি | ভর্তির তারিখ |
|---|---|---|---|
| ১ | ১০১ | ৮৯ | ০১-১১-২০১৫ |
| ২ | ১০২ | ৯১ | ০১-১১-২০১৫ |
| ৩ | ১০৩ | ৮০ | ০১-১১-২০১৫ |
| ৪ | ১০৪ | ৭৫ | ০২-১১-২০১৫ |
| ৫ | ১০৫ | ৭৭ | ০২-১১-২০১৫ |
SQL FORMAT() ফাংশনের ব্যবহার
নিম্নের SQL স্টেটমেন্টটি "Student_attendance" টেবিল থেকে আজকের দিনে ভর্তিকৃত শিক্ষার্থীর জন্য তারিখের একটি নির্দিষ্ট ফরম্যাট ঠিক করবেঃ
উদাহরণ
SELECT FORMAT(Now(),'YYYY-MM-DD') AS AdmittedDate
FROM Student_attendance;
Read more